package com.example.constant;

import java.util.Arrays;
import java.util.HashSet;
import java.util.Set;

/**
 * 文件常量配置
 */
public interface FileConstant {
    /**
     * 图片类型
     */
    // 写成一个长字符串是非常错误的写法，使用Set<String>来维护图片类型和可预览类型。
    // String IMAGE_TYPE = "webp、bmp、pcx、tif、gif、jpg、jpeg、tga、exif、fpx、svg、psd、cdr、pcd、dxf、ufo、eps、ai、png、hdri、raw、wmf、flic、emf、ico、pdf";
    Set<String> FILE_TYPES = new HashSet<>(Arrays.asList("webp", "bmp", "pcx", "tif", "gif", "jpg", "jpeg",
            "tga", "exif", "fpx", "svg", "psd", "cdr", "pcd", "dxf", "ufo",
            "eps", "ai", "png", "hdri", "raw", "wmf", "flic", "emf", "ico"));

    Set<String> PREVIEW_TYPES = new HashSet<>(Arrays.asList("png", "jpg", "jpeg", "gif", "bmp", "webp", "pdf"));


    /**
     * 小文件最大大小: 2MB
     */
    Long MAX_SIZE = 2 * 1024 * 1024L;

    /**
     * 断点续传时的chunkSize（分片大小）：5MB
     * 分片大小需和前端保持一致
     */
    Long CHUNK_SIZE = 5 * 1024 * 1024L;
}
